The "Sleeping Marble Beauty" challenge, created by TheZeal0t, is a unique cryptography and steganography puzzle involving ROT47 encoding. This variant of the Caesar cipher operates on different ASCII ranges.
File Download: Download File (4KB)
SHA1: fb0cc233849c7a83f7536389eec6346f881fbd2c
ROT47 is a substitution cipher that shifts ASCII characters within the printable range (33 to 126). A shift of 94 characters is applied, wrapping around once the range is exceeded.
def rot47(char, shift):
if 33 <= ord(char) <= 126:
return chr(33 + ((ord(char) - 33 + shift) % 94))
return char
def decode_rot47(encoded_str, shift):
decoded_str = ''.join(rot47(char, shift) for char in encoded_str)
return decoded_str
encoded_string = "( . # ) = u * M 1 * M M M y 1 7 M 5 * 1 7 . & M * # 8 ' M . ' 6 M * ' 4 M s l e e p M b r o A M Z o ?"
for shift in range(1, 63):
decoded_string = decode_rot47(encoded_string, shift)
print(f"Shift {shift}: {decoded_string.replace(' ', '')}")
The flag is: flag{Uh-oh---You-should-have-let-her-SLEEP-BRO!-:O}